An on-board navigation system can be useful for assisting a driver of an automobile in navigating through unfamiliar territory. An example of such a system is a computer-based device which allows the driver to select a destination from a stored street map database, computes a route to the selected destination, and then guides the driver to the selected destination. A system such as this generally includes various sensors for determining the position of the vehicle. As the vehicle travels, the system processes data from the sensors to determine the most likely position of the vehicle with respect to the map data. The system may display a street map of the surrounding area to the driver as the vehicle travels and an indication of the position and movement of the vehicle on the displayed map. The system may also provide audible and/or visual navigation instructions to the driver. On-board automobile navigation systems such as this are currently available from Zexel USA Corporation, located in Sunnyvale, Calif.
An on-board navigation system of this type is controlled by a computer. Like other computers, the computer in an on-board vehicle navigation system has an operating system, which is software for controlling the basic operations of the system. The operating system includes a file system for managing files, including naming, organizing, storing, and retrieving files. Several design concerns are associated with the file system in an on-board vehicle navigation system, however. These concerns generally relate to the speed, modifiability, memory usage, and market support of the file system.
For example, the original equipment manufacturer (OEM) may acquire the file system from an outside supplier. However, the use of proprietary software from an outside source may be subject to restrictions imposed by the supplier on modifying or decompiling the file system software. Such restrictions can impede debugging operations and can hinder upgrades to the overall navigation system. In addition, it may be difficult to find support tools in the marketplace for a proprietary file system. Therefore, it may be desirable to use a file system which has an open architecture (i.e., published specifications).
The well-known DOS (Disk Operating System) file system has an open architecture, which makes it an attractive prospect for use in an on-board navigation system. In addition, a DOS file system generally requires a relatively small amount of memory compared to certain proprietary file systems. However, a DOS file system tends to be slow when accessing large files, as discussed in detail below (under the heading "Detailed Description"). Yet high speed operation is particularly desirable in an on-board automobile navigation system, because data files tend to be accessed with high frequency (such as when changing scale levels or geographic area). Further, delays in accessing files can distract a driver and therefore create a hazard. Consequently, a standard DOS file system is generally not well-suited for use in an on-board vehicle navigation system.
Therefore, what is needed is a file system which provides fast data access, low memory usage, flexibility, and marketplace support. What is further needed is a fast file system which has an open architecture and which is suited for use in an on-board vehicle navigation system.